package com.yidu.service;

import java.util.List;
import java.util.Map;


import com.yidu.model.SnAudit;
import com.yidu.model.SnComPurDetail;
import com.yidu.model.SnComPurchase;
import com.yidu.model.SnComSaDetail;
import com.yidu.model.SnComType;
import com.yidu.model.SnCommodity;
import com.yidu.model.SnUser;
/**
 * 采购商品service
 * @author wuqi
 * @date 2019年1月3日
 */
public interface SnComPurchaseService {

	/**
	 * 查询采购表
	 * @param map 参数
	 * @return 采购表数据
	 */
	List<SnComPurchase> findAll(Map<String, Object> map);
	/**
	 * 查询行数
	 * @param maps 条件
	 * @return 采购表行数
	 */
	int findCount(Map<String, Object> map);
	
	/**
	 * 查询商品表
	 * @param map1 参数
	 * @return 商品表数据
	 */
	List<SnCommodity> findAllCommodity(Map<String, Object> map1);
	/**
	 * 查询商品表行数
	 * @param map1 参数
	 * @return 商品表行数
	 */
	int findCommodityCount(Map<String, Object> map1);
	/**
	 * 查询商品类型
	 * @return 商品类型数据
	 */
	List<SnComType> findAllSnComType();
	/**
	 * 增加采购和采购详情表
	 * @param tianJia 采购表的数据
	 * @return 1表示成功 ，0表示失败
	 */
	int insert(String tianJia, SnUser user);
	/**
	 * 增加审核表修改采购表状态
	 * @param purId 采购id
	 * @param auIdea 审核意见
	 * @param session 获取session里的值 
	 * @return 1表示成功 ，0表示失败
	 */
	int insertSnAudit(String purId, String auIdea, SnUser user);
	/**
	 * 采购删除
	 * @param purId 采购id
	 * @return 1表示成功 ，0表示失败
	 */
	int delete(String purId);
	/**
	 * 根据id查询商品表
	 * @param comId 商品id
	 * @return 商品集合
	 */
	SnCommodity findById(String comId);
	/**
	 * 根据采购id查询采购详情表的商品id
	 * @param purId 采购id
	 * @return 采购详情表集合
	 */
	List<SnComPurchase> findDetailById(String purId);
	
	/**
	 * 修改
	 * @param tianJia 采购表的数据
	 * @param purId 采购表id
	 * @param session 获取session里的值
	 * @return 1表示成功 ，0表示失败
	 */
	int update(String tianJia,String purId, SnUser user);
	/**
	 * 根据id查询审核表
	 * @param map1 参数
	 * @return 审核表数据
	 */
	List<SnAudit> snaudit(Map<String, Object> map1);
	/**
	 * 入库
	 * @param purId 采购id
	 * @param braId 公司id
	 * @param session 得到session里的值
	 * @return 查询出来的集合
	 */
	int ruku(String purId, String braId, SnUser user);
	
	/**
	 * 点击退货提交
	 * @param purId 采购id
	 * @param tianJia 退货意见
	 * @param csComment 表的数据
	 * @param purSum 总价
	 * @param purCount 总数量
	 * @param braId 公司id
	 * @param session 获取session里的值
	 * @return 查询出来的集合
	 */
	int findBypdNumber(String purId, String tianJia, String csComment, String purSum, String purCount, String braId,
			SnUser user);
	/**
	 * 通过商品id和采购id查询采购详情表
	 * @param scpd 条件
	 * @return 查询出来的集合
	 */
	SnComPurDetail findByIdBianJi(SnComPurDetail scpd);
	/**
	 * 通过退货的业务id查询退货详情表
	 * @param purId 采购id
	 * @return 退货详情表
	 */
	List<SnComSaDetail> findAllComSaDetail(Map<String, Object> map1);
	/**
	 * 查询退货表
	 * @param map1参数
	 * @return 退货表数据
	 */
	List<SnComSaDetail> findAllSnComSales(Map<String, Object> map1);
	/**
	 * 查询退货表行数
	 * @param map1参数
	 * @return 退货表行数
	 */
	int findAllComSaDetailCount(Map<String, Object> map1);
	
	
}
